
/*
+----------------------------------------------------------------------------+
!                             FICHA TECNICA DO PROGRAMA                      !
+----------------------------------------------------------------------------+
!Programa          ! F50CTMP                                                !
+------------------+---------------------------------------------------------+
!Descricao         ! Ponto de Entrada no final da rotina que carrega as      !
!                  ! informacoes do Rateio do Contas a Pagar, utilizado para !
!                  ! atualizar o campo Codigo do Projeto do rateio           !
+------------------+---------------------------------------------------------+
!Autor             ! TSC195 - Gustavo Schepp                                 !
+------------------+---------------------------------------------------------+
!Campos Necessarios! CTJ_ZPROJE - Tipo Caracter / Tam 10 / Brw-Usd           !
!                  ! CV4_ZPROJE - Tipo Caracter / Tam 10 / Brw-Usd           !
+------------------+---------------------------------------------------------+
!Data de Criacao   ! 13/12/10                                                !
+------------------+---------------------------------------------------------+
!   ATUALIZACOES                                                             !
+-------------------------------------------+-----------+-----------+--------+
!   Descricao detalhada da atualizacao      !Nome do    ! Analista  !Data da !
!                                           !Solicitante! Respons.  !Atualiz.!
+-------------------------------------------+-----------+-----------+--------+
!                                           !           !           !        !
!                                           !           !           !        !
+-------------------------------------------+-----------+-----------+--------+
*/

User Function F50CTMP1    

	// armazena area atual	
	Local _aAreaTMP	:= TMP->(GetArea())
	//Alert("Entrou F50CTMP1")
	_cZPROJE :=''	
	dbSelectArea("TMP")
	TMP->(dbGoTop())
	While TMP->(!Eof())
		// atualiza as informacoes do projeto
		_cZPROJE := sfRetProje()
        if empty(_cZproje)  //SE ESTIVER VAZIO --- EMERSON 02.08.11
       		_cZPROJE:=CTJ->CTJ_ZPROJE
       	Endif	
		dbSelectArea("TMP")
        Reclock("TMP",.F.)
       	TMP->CTJ_ZPROJE := _cZPROJE
		MsUnLock()
		// proximo item
		TMP->(dbSkip())
	EndDo

	// restaura area inicial
	RestArea(_aAreaTMP)
   //Alert("passou F50CTMP1")
Return

//** funcao que le os detalhes do projeto do rateio
Static Function sfRetProje()
	Local _cRet := CriaVar("CV4_ZPROJE")
	Local _aAreaAtu := GetArea()
	Local _aAreaCV4 := CV4->(GetArea())
	
	// arquivo de rateio
	dbSelectArea("CV4")
	CV4->(dbSetOrder(1)) //1-CV4_FILIAL, CV4_DTSEQ, CV4_SEQUEN
	CV4->(dbSeek( SE2->E2_ARQRAT ))
	While CV4->(!Eof()).and.((CV4->CV4_FILIAL+DTOS(CV4->CV4_DTSEQ)+CV4->CV4_SEQUEN)==(RTrim(SE2->E2_ARQRAT)))
		// verifica se o item do arq temporario eh identico ao do rateio
		If	(TMP->CTJ_DEBITO==CV4->CV4_DEBITO).and.(TMP->CTJ_CREDITO==CV4->CV4_CREDIT).and.;
			(TMP->CTJ_PERCEN==CV4->CV4_PERCEN).and.(StrZero(TMP->(RecNo()),Len(CV4->CV4_ITSEQ))==CV4->CV4_ITSEQ)
			// retorna o conteudo do campo projeto
			_cRet := CV4->CV4_ZPROJE
			// sai do While
			Exit
		EndIf
		// proximo item
		CV4->(dbSkip())
	EndDo
	
	// restaura area inicial
	RestArea(_aAreaCV4)
	RestArea(_aAreaAtu)

Return (_cRet)